home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1999 April: Mac OS SDK / Dev.CD Apr 99 SDK1.toast / Development Kits / Interfaces&Libraries / Universal / Interfaces / CIncludes / QD3DAcceleration.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-08-17  |  2.9 KB  |  121 lines  |  [TEXT/MPS ]

  1. /*
  2.      File:        QD3DAcceleration.h
  3.  
  4.      Contains:    Header file for low-level 3D driver API                            
  5.  
  6.      Version:    Technology:    Quickdraw 3D 1.5.4
  7.                  Release:    Universal Interfaces 3.2
  8.  
  9.      Copyright:    © 1995-1998 by Apple Computer, Inc., all rights reserved.
  10.  
  11.      Bugs?:        For bug reports, consult the following page on
  12.                  the World Wide Web:
  13.  
  14.                      http://developer.apple.com/bugreporter/
  15.  
  16. */
  17. #ifndef __QD3DACCELERATION__
  18. #define __QD3DACCELERATION__
  19.  
  20. #ifndef __QD3D__
  21. #include <QD3D.h>
  22. #endif
  23.  
  24.  
  25.  
  26. #if PRAGMA_ONCE
  27. #pragma once
  28. #endif
  29.  
  30. #ifdef __cplusplus
  31. extern "C" {
  32. #endif
  33.  
  34. #if PRAGMA_IMPORT
  35. #pragma import on
  36. #endif
  37.  
  38. #if PRAGMA_STRUCT_ALIGN
  39.     #pragma options align=power
  40. #elif PRAGMA_STRUCT_PACKPUSH
  41.     #pragma pack(push, 2)
  42. #elif PRAGMA_STRUCT_PACK
  43.     #pragma pack(2)
  44. #endif
  45.  
  46. #if PRAGMA_ENUM_ALWAYSINT
  47.     #pragma enumsalwaysint on
  48. #elif PRAGMA_ENUM_OPTIONS
  49.     #pragma option enum=int
  50. #elif PRAGMA_ENUM_PACK
  51.     #if __option(pack_enums)
  52.         #define PRAGMA_ENUM_PACK__QD3DACCELERATION__
  53.     #endif
  54.     #pragma options(!pack_enums)
  55. #endif
  56.  
  57. /******************************************************************************
  58.  **                                                                             **
  59.  **                         Vendor ID definitions                             **
  60.  **                                                                             **
  61.  *****************************************************************************/
  62. /*
  63.  * If kQAVendor_BestChoice is used, the system chooses the "best" drawing engine
  64.  * available for the target device. This should be used for the default.
  65.  */
  66. #define kQAVendor_BestChoice        (-1)
  67. /*
  68.  * The other definitions (kQAVendor_Apple, etc.) identify specific vendors
  69.  * of drawing engines. When a vendor ID is used in conjunction with a
  70.  * vendor-defined engine ID, a specific drawing engine can be selected.
  71.  */
  72. #define kQAVendor_Apple            0
  73. #define kQAVendor_ATI            1
  74. #define kQAVendor_Radius        2
  75. #define kQAVendor_Mentor        3        /* Mentor Software, Inc. */
  76. #define kQAVendor_Matrox        4
  77. #define kQAVendor_Yarc            5
  78. #define kQAVendor_DiamondMM        6
  79. #define kQAVendor_3DLabs        7
  80. #define kQAVendor_D3DAdaptor    8
  81. #define kQAVendor_IXMicro        9
  82. /******************************************************************************
  83.  **                                                                             **
  84.  **                         Apple's engine ID definitions                         **
  85.  **                                                                             **
  86.  *****************************************************************************/
  87. #define kQAEngine_AppleSW        0        /* Default software rasterizer */
  88. #define kQAEngine_AppleHW        (-1)    /* Apple accelerator */
  89. #define kQAEngine_AppleHW2        1        /* Another Apple accelerator */
  90. #define kQAEngine_AppleHW3        2        /* Another Apple accelerator */
  91.  
  92.  
  93. #if PRAGMA_ENUM_ALWAYSINT
  94.     #pragma enumsalwaysint reset
  95. #elif PRAGMA_ENUM_OPTIONS
  96.     #pragma option enum=reset
  97. #elif defined(PRAGMA_ENUM_PACK__QD3DACCELERATION__)
  98.     #pragma options(pack_enums)
  99. #endif
  100.  
  101. #if PRAGMA_STRUCT_ALIGN
  102.     #pragma options align=reset
  103. #elif PRAGMA_STRUCT_PACKPUSH
  104.     #pragma pack(pop)
  105. #elif PRAGMA_STRUCT_PACK
  106.     #pragma pack()
  107. #endif
  108.  
  109. #ifdef PRAGMA_IMPORT_OFF
  110. #pragma import off
  111. #elif PRAGMA_IMPORT
  112. #pragma import reset
  113. #endif
  114.  
  115. #ifdef __cplusplus
  116. }
  117. #endif
  118.  
  119. #endif /* __QD3DACCELERATION__ */
  120.  
  121.